home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1996 #15 / Monster Media Number 15 (Monster Media)(July 1996).ISO / os2 / cpumt10a.zip / CPUMETER.HLP (.txt) < prev    next >
OS/2 Help File  |  1996-06-21  |  27KB  |  376 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. About Cpumeter ΓòÉΓòÉΓòÉ
  3.  
  4. Welcome to CPUMeter, Version 1.0a 
  5.  
  6. I am proud to present the first public version of CPUMeter. This program is 
  7. SHAREWARE, you are allowed to distribute the zipfile cpum*.zip. Do NOT 
  8. redistribute any part of this zipfile. After a trial period of 4 weeks, you 
  9. have to register if you want to use the program any further. Otherwise, you 
  10. must remove it from your computer. 
  11.  
  12. CPUMeter is an enhanced CPU-usage meter, similar to "PULSE.EXE". Unlike other 
  13. CPU-meters, it does not use a counting loop to determine the CPU-load. It uses 
  14. the DosQProcStat API-call. This reduces CPU-load and CPU power-consumption and 
  15. gives the possibility to show infos about CPU-hogging processes. 
  16.  
  17. This program is SHAREWARE. That means you are allowed to copy and distribute 
  18. the original-archive (cpum*.zip) and you are allowed to test the program for 
  19. two weeks. After that time, you MUST register it or remove the program from 
  20. your PC(s). 
  21.  
  22. To register, send me 
  23.  
  24.      Money $$$$  ;-) 
  25.  
  26.         -  either DM 20,- cash or as negotiable "EUROCHECK" 
  27.  
  28.         -  or   US$20,- cash or as negotiable "EUROCHECK" 
  29.  
  30.      Your postal-adress, so i will know where to send your registration-key. 
  31.  
  32.  My adress is: 
  33.  
  34.     Christof Pastors 
  35.     Luitpoldstr. 12 
  36.     91054 Erlangen 
  37.  
  38.     Germany 
  39.  
  40.  I am also open to comments and discussion about my program, any constructive 
  41.  comment will be appreciated. If you want to contact me via email: 
  42.     pastors@eev.e-technik.uni-erlangen.de 
  43.  
  44.  The newest version of CPUMeter can be found on the regular ShareWare-servers 
  45.  (like Hobbes) or (the very newest) at: 
  46.     http://eev11.e-technik.uni-erlangen.de/cpumeter.html 
  47.  
  48.  And here the legal stuff: 
  49.  
  50.   CPUMeter is Copyright (c) 1996, Christof Pastors 
  51.  
  52.  This program is provided "as is" and gives you a chance to try the product for 
  53.  two weeks. After that time, you MUST register it or remove the program from 
  54.  your PC(s). I will give NO kind of SUPPORT to unregistered users (though i am 
  55.  open for comments and constructive crticism). I tried to find as many bugs as 
  56.  possible, but i am IN NO WAY RELIABLE FOR INDIRECT OR  SIMILAR  DAMAGES, 
  57.  INCLUDING  ANY LOST PROFITS OR LOST DATA ARISING OUT OF  THE  USE OR 
  58.  INABILITY TO USE THE SOFTWARE OR ANY DATA SUPPLIED . 
  59.  
  60.  
  61. ΓòÉΓòÉΓòÉ 2. Installation ΓòÉΓòÉΓòÉ
  62.  
  63. Simply unzip the zipped files in a single directory. Then create a new 
  64. program-object by starting cpu_inst.cmd or by dragging and customizing an 
  65. object from the program-template in your templates-folder.  READY. 
  66.  
  67. CPUMeter does not register a DLL nor does it create an entry in the ini-files 
  68. of OS/2, i don't like programs modifying system-files! 
  69.  
  70. NEW! Accurate results with High-Resolution-Timer! 
  71. To exploit all capabilities of CPUMeter, you can use the 
  72. "High-Resolution-Timer". For this, you need two new drivers from IBM: 
  73. CLOCK01.SYS and TIMER0.SYS. If you have one of those rare microchannel-PCs, you 
  74. need the CLOCK02.SYS driver instead of clock01. With those drivers, the problem 
  75. is fixed that CPUMeter shows to much CPU-load when an application is waked very 
  76. often (for example to handle mouse-movement messages). BUT BE WARNED: 
  77. Enabling this option can cause problems 
  78.  
  79.      DOS-programs that use the same hardware-timer will hang. This is propably 
  80.       the case with many DOS-Games. 
  81.  
  82.      WINDOWS-sessions may hang when starting or they can show bad response to 
  83.       mouse-input. 
  84.  
  85.      Seamless WINOS2-sessions may even block the OS/2 desktop when they hang 
  86.       on startup. 
  87.  If you have problems with a DOS-program that needs the same PC-hardware-timer, 
  88.  go to the settings-Notebook of CPUMeter and disable the use of HRTimer. In 
  89.  rare cases, you should also exit CPUMeter after this step to free the 
  90.  Hardware-timer. 
  91.  
  92.  How YOU can get these drivers: 
  93.  
  94.      They will be part of MERLIN, the next version of OS2, 
  95.  
  96.      I added the MMPM_MPU.ZIP archive that comes from IBM to the CPUMeter 
  97.       archive. You can find the needed drivers in there. 
  98.  
  99.      They are part of the DEVCON 9/10 "Developer's Toolkit for OS/2 Warp" ( 
  100.       see BETA-section there) 
  101.  
  102.      They are part of the new Real-Time-Midi package developed by IBM. 
  103.  
  104.      And they can be found per ftp at the HOBBES-Shareware archive ( 
  105.       MMPM_MPU.ZIP). 
  106.  
  107.  How to install the new drivers: 
  108.  If you don't use ( or need ) the according Multimedia-Setup "MINSTALL.EXE", 
  109.  which brings you full MPU-401 multimedia support, install them "by hand": 
  110.  
  111.      Make a backup copy of the old clock01.sys in the \os2\boot\ directory. 
  112.  
  113.      Copy the new clock01.sys and timer0.sys in this directory. 
  114.  
  115.      Add the statement "BASEDEV=TIMER0.SYS" to your config.sys. 
  116.  
  117.      Reboot. 
  118.  If CPUMeter can't open the new timer on program-startup, it will use the 
  119.  (inaccurate) standard-timer. 
  120.  
  121.  
  122. ΓòÉΓòÉΓòÉ 3. Technical Details ΓòÉΓòÉΓòÉ
  123.  
  124. How does it work? What's so special with this "pulse"-like app? 
  125.  
  126. I never liked the way most PULSE-like cpumeters work: They create an 
  127. idle-priority thread that executes a infinite counting loop which hogs the CPU 
  128. as soon as it is idle. This way the CPU will never get really idle.... 
  129.  
  130. Instead i wrote a REAL CPUMeter, that queries the OS/2 kernel every second, how 
  131. much cputime all processes have consumed and then displays the result. After 
  132. 10msec, the CPU is idle again. There is a "documented" undocumented API-call 
  133. (DosQueryProcStat) that gives all informations one would need: Which thread of 
  134. which process has consumed how much cputime and much more infos. If you are 
  135. curious, take a look at pstat.exe in your \os2\ directory. Simply spoken, this 
  136. program does a formatted output of the mentioned API-call. This program and the 
  137. wonderful tool called "watchcat" exploit this API-call and gave me the idea ... 
  138.  
  139. Basically, CPUMeter queries the process-statistics every second and sums up the 
  140. cputime consumed by all threads. This and the name of the most cpu-consuming 
  141. process is displayed. There are some advantages and some disadvantages of this 
  142. proceeding: 
  143.  
  144. Advantages: 
  145.  
  146.      It is easy to determine the process who actually hogs the CPU. 
  147.  
  148.      There is no Idle-Tread counting and counting. This means: 
  149.  
  150.         -  The CPU is really idle when nothing else is to do. The power 
  151.            consumption of the CPU is reduced dramatically. As my favorite 
  152.            german computer-magazine "Ct" showed, OS/2 and LINUX "HALT" the CPU 
  153.            when the kernel is idle between the (timer-) interrupts and nothing 
  154.            else is to do. On my P60, the power consumed by the CPU goes down 
  155.            from 12W to 4W. This could be interesting for people who like 
  156.            overclocking their CPUs ;-) . Or for the people who own a NOTEBOOK 
  157.            and wonder, why the battery goes low when PULSE is running... 
  158.  
  159.         -  Other Idle-Priority threads like the thumbnail-creator in PMVIEW.EXE 
  160.            or the idle-priority worker-thread in FM/2 can do their work without 
  161.            having to share the CPU with PULSE and its "useful" counting-loop. 
  162.  
  163.  Disadvantages: 
  164.  
  165.      When threads are created and finished in a very short time (< 1sec), 
  166.       CPUMeter will not always see them and therefore report a lower cpu-load. 
  167.  
  168.       Note: 
  169.       The next problem is fixed if you have the new High-Resolution-Timer from 
  170.       IBM installed! See  installation for details. 
  171.  
  172.      When a process is waked very often (hundred times a second and faster), 
  173.       the kernel counts to much cputime for this thread. This can be the case 
  174.       for a  DOS-BOX that polls the keyboard or for a window, that gets a lot 
  175.       of messages when you move the mouse over its window-area. Sorry, this is 
  176.       a restriction of the kernel, not my fault. 
  177.  
  178.  
  179. ΓòÉΓòÉΓòÉ 4. CPUMeter - Application Help ΓòÉΓòÉΓòÉ
  180.  
  181. CPUMeter's  User-Interface consists of: 
  182.  
  183.  Main Window,        this is shown on startup. 
  184.  
  185.  PopUpMenu,          this is shown after a Right-Mousebutton-Click on the 
  186.                      Main-Window. 
  187.  
  188.  Process-List,       you can invoke this window by selecting "Proc. List" on 
  189.                      the PopUpMenu. 
  190.  
  191.  Settings-Window,    you can invoke this window by selecting "Settings" on the 
  192.                      PopUpMenu. 
  193.  
  194.  Registration-Window, you can invoke this window over the PopUpMenu, you can 
  195.                      register CPUMeter there. For infos how to register see 
  196.                      About CPUMeter. 
  197.  
  198.  About-Window,       you can invoke this window over the PopUpMenu, the current 
  199.                      version-number can be found there. 
  200.  
  201.  
  202. ΓòÉΓòÉΓòÉ 4.1. CPUMeter - Main Window ΓòÉΓòÉΓòÉ
  203.  
  204. The Main Window 
  205.  
  206. The main window contains the following areas: 
  207.  
  208.      The Linegraph, where the CPU-load over time is displayed. 
  209.  
  210.      The CPU-Bargraph, where the actual CPU-load is displayed: 
  211.  
  212.         -  The total load of all processes, 
  213.  
  214.         -  the load caused by the most active process, 
  215.  
  216.      The Disk-Bargraph, where disk-Usage is shown: 
  217.  
  218.         -  Free space on a user-selected drive, 
  219.  
  220.         -  the swapfile-size (or another file you can choose on this drive) and 
  221.  
  222.         -  space used by other files. 
  223.  
  224.      The bottom-text, it gives you informations about: 
  225.  
  226.         -  The total load of all processes, 
  227.  
  228.         -  the load caused by the most active process, 
  229.  
  230.         -  and the name of this process. 
  231.  
  232.  See the settings section on how to customize CPUMeter. 
  233.  
  234.  
  235. ΓòÉΓòÉΓòÉ 4.2. CPUMeter - Settings ΓòÉΓòÉΓòÉ
  236.  
  237. Settings - Notebook: 
  238. You can open the settings-notebook via the PopUp menu. 
  239.  
  240. The "Linegraph" page allows you to change: 
  241.  
  242.      the line-style of the graphics (filled or not filled). Filled style looks 
  243.       better, but be aware that repaint consumes twice as much cputime. 
  244.  
  245.      the usage of a Memory-buffer for painting. This eliminates flickering of 
  246.       the graphics-update because all painting will be made in a memory buffer 
  247.       and the result will be copied to screen. This can cost three times more 
  248.       cputime and about 20kB memory depending on window-size. 
  249.  
  250.      the use of the new HighResolutionTimer. This will give perfect accuracy 
  251.       of the reported CPU-usage. The new clock0*.sys and timer0.sys devices are 
  252.       required for this option, see installation. This option can conflict with 
  253.       some DOS-programs (especially with some DOS-games) that use the PC 
  254.       hardware-timer. If you have problems, disable this checkbox and CPUMeter 
  255.       will release the timer. 
  256.  
  257.      the update interval. You can enter the number of seconds between the 
  258.       updates of the graph. 
  259.  
  260.       Note: 
  261.       To keep track with opened and finished threads, CPUMeter makes a sample 
  262.       of the process-status every second, independent of the 
  263.       graph-update-interval. You will hardly notice this internal work. For 
  264.       more infos, see Technical details. 
  265.  
  266.  The "Drives"-page allows you to change: 
  267.  
  268.      which drive you want to monitor ( default is your bootdrive ). 
  269.  
  270.      which special file on this drive you want to monoitor ( default is 
  271.       \os2\system\swapper.dat, Use the "Valid filename?"-button to check wether 
  272.       the filename and path you typed in is correct) . 
  273.  
  274.  Other Settings. 
  275.  You can change other settings directly without opening the Notebook: 
  276.  
  277.      Window-Size: 
  278.       You can resize the Main window by moving the frame-border with your 
  279.       mouse. By default, the Main-window occupies a 150x80 pixel area at the 
  280.       lower-right of your desktop. 
  281.  
  282.      Colors: 
  283.       You can drag a color from the color-palette to the part of the 
  284.       Main-Window you want to change. Normal-dragging changes the background 
  285.       color of the subwindow, when you hold the "Ctrl"-key while dragging, the 
  286.       line- or text-color is changed. 
  287.  
  288.      Font: 
  289.       You can drag a font from a font-palette to the CPU-load textwindow. The 
  290.       subwindow will automatically resize to the new font-height. I recommend 
  291.       using non-propotional-fonts only, as they allow a fixed width of the 
  292.       text-columns. 
  293.  
  294.  There will be more choices in further versions ;-) 
  295.  
  296.  When the main window is closed, all settings are saved in cpumeter.ini. This 
  297.  file will be created in the actual working-path where you invoked CPUMeter. 
  298.  
  299.  TIP: 
  300.  You could make different CPUMeter-objects from the program-object template. 
  301.  When you give them different working-directories, they store individual 
  302.  INI-files in each directory. This way, you could have two or more of them 
  303.  running side-by-side with different update intervals. 
  304.  
  305.  
  306. ΓòÉΓòÉΓòÉ 4.3. CPUMeter - About Dialog ΓòÉΓòÉΓòÉ
  307.  
  308. This is the help panel for the About DLG. For more informations, see "About 
  309. Cpumeter". 
  310.  
  311.  
  312. ΓòÉΓòÉΓòÉ 4.3.1. CPUMeter - About Dialog , Button ΓòÉΓòÉΓòÉ
  313.  
  314. Press the OK-button to dismiss this window. For more informations, see "About 
  315. Cpumeter". 
  316.  
  317.  
  318. ΓòÉΓòÉΓòÉ 4.4. CPUMeter - Registration Dialog ΓòÉΓòÉΓòÉ
  319.  
  320. Use this window to register your copy of CPUMeter. Please type your name and 
  321. your registration-key EXACTLY as you got them in my response to your 
  322. registration fee. 
  323.  
  324.  
  325. ΓòÉΓòÉΓòÉ 4.4.1. CPUMeter - Registration Dialog , Button ΓòÉΓòÉΓòÉ
  326.  
  327. Press the Register-button to enter your registration-key. 
  328.  
  329.  
  330. ΓòÉΓòÉΓòÉ 4.5. CPUMeter - Process List ΓòÉΓòÉΓòÉ
  331.  
  332. In this Window, the consumed CPU-time is listed per-process.  Note that this IS 
  333. NOT THE SAME AS THE TASKLIST! Not every process generates a switch list-entry 
  334. in the tasklist. A good example for this is this is the first process named 
  335. pmshell.exe in the process-list. This is Presentation-Manager itself and there 
  336. is no need to generate a Tasklist-entry. On the other hand, not every window 
  337. that is shown in the tasklist belongs to a different process. A good example 
  338. for this is the WPShell (The second process with the exename pmshell.exe), 
  339. which can create a lot of windows in the same process-space.  The following 
  340. informations are listed: 
  341.  
  342.      The Program-Icon. 
  343.  
  344.      Actual Load: 
  345.       the percentage of CPU-usage in the last second before the window was 
  346.       refreshed. 
  347.  
  348.      All Time: 
  349.       All time is the time consumed by the process since booting OS/2. Because 
  350.       the times vary heavily, the bargraph has a logarithmic scaling. 
  351.  
  352.      PID: 
  353.       The OS/2 kernel gives every process a unique ProcessID on startup. 
  354.  
  355.      Exename: 
  356.       The name of the executable file. The file-extension is always *.exe and 
  357.       is not shown therefore. 
  358.  
  359.      Title: 
  360.       The title of the process in the tasklist, if available. Not every running 
  361.       process has a corresponding entry in the tasklist (That's why the 
  362.       process-list may be useful in certain situations ;-) 
  363.  
  364.  
  365. ΓòÉΓòÉΓòÉ 5. CPUMeter - Keys Help ΓòÉΓòÉΓòÉ
  366.  
  367. This is the keys help panel. 
  368.  
  369. The following is a list of application-provided keys: 
  370.  
  371.  F1        Help. 
  372.  F3        Exit program. 
  373.  Alt F4    Exit program. 
  374.  Control p Process List. 
  375.  Control s Settings. 
  376.